package com.itheima.javawork.day03.test02;
/*
- 抽象类和抽象方法必须使用 abstract 关键字修饰
      //抽象类的定义
      public abstract class 类名 {}
      //抽象方法的定义
      public abstract void eat();
- 抽象类中不一定有抽象方法，有抽象方法的类一定是抽象类
- 抽象类不能实例化
- 抽象类可以有构造方法
- 抽象类的子类
  	要么重写抽象类中的所有抽象方法
  	要么是抽象类

1. 猫类和狗类中存在共性内容，应向上抽取出一个动物类（Animal）
2. 父类Animal中，无法将 eat 方法具体实现描述清楚，所以定义为抽象方法
3. 抽象方法需要存活在抽象类中，将Animal定义为抽象类
4. 让 Cat 和 Dog 分别继承 Animal，重写eat方法
5. 测试类中创建 Cat 和 Dog 对象，调用方法测试


 */
public class teat {
    public static void main(String[] args) {
    Dog d = new Dog();
        d.eat();
        d.drink();

    Cat c = new Cat();
        c.drink();
        c.eat();

    //Animal a = new Animal();
    //a.eat();
        }
}
